package day3

class User {  // 伴生类

  var name:String = _

  def this(name:String) = {
    this()
    this.name = name
  }

  def m1() = {
    println(name)
  }

}

object User { // 伴生对象

  def m2(): Unit = {
    println("m2方法~")
  }

  // apply 方法是伴生对象中的一个默认方法，可以通过 User()这个语法，自动执行到apply方法，而该方法最大的作用是创建伴生类对象

  def apply() = {
    new User()
  }

  def apply(name:String) = {
    new User(name)
  }
}
